package com.yytek.am.domain;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.yytek.common.core.annotation.Excel;
import com.yytek.common.core.web.domain.BaseEntity;

/**
 * 告警原始事件对象 fm_event_record
 * 
 * @author yytek-iot
 * @date 2022-10-10
 */
@ApiModel("告警原始事件对象")
public class FmEventRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    @ApiModelProperty("id")
    private Long id;

    /** 告警定义id */
    @Excel(name = "告警定义id")
    @ApiModelProperty("告警定义id")
    private Long alarmDefineId;

    /** 项目id */
    @Excel(name = "项目id")
    @ApiModelProperty("项目id")
    private String projectId;

    /** 指标名称 */
    @Excel(name = "指标名称")
    @ApiModelProperty("指标名称")
    private String kpiName;

    /** 指标值 */
    @Excel(name = "指标值")
    @ApiModelProperty("指标值")
    private String kpiValue;

    /** 唯一标识(设备唯一标识) */
    @Excel(name = "唯一标识(设备唯一标识)")
    @ApiModelProperty("唯一标识(设备唯一标识)")
    private String searchIndex;

    /** 告警区分索引(例如 #label_#deviceName_#port，设备同一个告警可能分不同端口的情况) */
    @Excel(name = "告警区分索引(例如 #label_#deviceName_#port，设备同一个告警可能分不同端口的情况)")
    @ApiModelProperty("告警区分索引(例如 #label_#deviceName_#port，设备同一个告警可能分不同端口的情况)")
    private String subIndex;

    /** 扩展属性数据 */
    @Excel(name = "扩展属性数据")
    @ApiModelProperty("扩展属性数据")
    private String jsonData;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setAlarmDefineId(Long alarmDefineId) 
    {
        this.alarmDefineId = alarmDefineId;
    }

    public Long getAlarmDefineId() 
    {
        return alarmDefineId;
    }
    public void setProjectId(String projectId) 
    {
        this.projectId = projectId;
    }

    public String getProjectId() 
    {
        return projectId;
    }
    public void setKpiName(String kpiName) 
    {
        this.kpiName = kpiName;
    }

    public String getKpiName() 
    {
        return kpiName;
    }
    public void setKpiValue(String kpiValue) 
    {
        this.kpiValue = kpiValue;
    }

    public String getKpiValue() 
    {
        return kpiValue;
    }
    public void setSearchIndex(String searchIndex) 
    {
        this.searchIndex = searchIndex;
    }

    public String getSearchIndex() 
    {
        return searchIndex;
    }
    public void setSubIndex(String subIndex) 
    {
        this.subIndex = subIndex;
    }

    public String getSubIndex() 
    {
        return subIndex;
    }
    public void setJsonData(String jsonData) 
    {
        this.jsonData = jsonData;
    }

    public String getJsonData() 
    {
        return jsonData;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("alarmDefineId", getAlarmDefineId())
            .append("projectId", getProjectId())
            .append("kpiName", getKpiName())
            .append("kpiValue", getKpiValue())
            .append("searchIndex", getSearchIndex())
            .append("subIndex", getSubIndex())
            .append("jsonData", getJsonData())
            .append("createTime", getCreateTime())
            .toString();
    }
}
